import java.io.UnsupportedEncodingException;
import java.util.Arrays;

public class day_05_IO_encoding_1 {
    public static void main(String[] args) throws UnsupportedEncodingException {
        /*
         * Java中编码的方法:
         * public byte[] getBytes() 使用默认方式进行编码
         * public byte[] getBytes(String charsetName) 使用指定方式进行编码
         * Java中解码的方法:
         * String(byte[] bytes) 使用默认方式进行解码
         * String(byte[] bytes,String charsetName) 使用指定方式进行解码
         */

        // 编码-空参-编译器默认编码
        String str = "王林林大傻逼hahaha";
        byte[] bytes = str.getBytes(); // 空参为编译器默认编码：UTF-8
        System.out.println("UTF-8 编码: " + Arrays.toString(bytes)); // UTF-8:中文3字节 英文1字节 GBK:中文2字节 英文1字节

        // 编码-带参-指定编码
        byte[] bytes2 = str.getBytes("GBK");
        System.out.println("GBK 编码: " + Arrays.toString(bytes2));

        //解码-空参-编译器默认编码
        String str2 = new String(bytes);
        System.out.println("UTF-8 解码: " + str2);

        //解码-带参-指定解码方式
        String str3 = new String(bytes2, "GBK");
        System.out.println("GBK 解码: " + str3);
    }
}
